//package com.ruyuan.eshop.construction.dao;
//
//import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
//import com.ruyuan.eshop.common.dao.BaseDAO;
//import com.ruyuan.eshop.construction.converter.FrontCategoryConverter;
//import com.ruyuan.eshop.construction.domain.dto.FrontCategoryTreeDTO;
//import com.ruyuan.eshop.construction.domain.entity.CategoryInfoDO;
//import com.ruyuan.eshop.construction.domain.entity.FrontCategoryDO;
//import com.ruyuan.eshop.construction.domain.entity.FrontCategoryTreeDO;
//import com.ruyuan.eshop.construction.domain.request.CategoryRequest;
//import com.ruyuan.eshop.construction.domain.request.FrontCategoryRequest;
//import com.ruyuan.eshop.construction.domain.request.QueryCategoryRequest;
//import com.ruyuan.eshop.construction.mapper.FrontCategoryMapper;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Repository;
//
//import javax.annotation.Resource;
//import java.util.List;
//
///**
// *  前台类目
// *
// * @author zhonghuashishan
// */
//@Repository
//@Slf4j
//public class FrontCategoryDAO extends BaseDAO<FrontCategoryMapper, FrontCategoryDO> {
//
//    @Resource
//    private FrontCategoryConverter frontCategoryConverter;
//    /**
//     * 查询前台类目树
//     * @param queryCategoryRequest
//     * @return
//     */
//    public List<FrontCategoryTreeDO> selectTree(QueryCategoryRequest queryCategoryRequest){
//        return this.baseMapper.selectTree(queryCategoryRequest);
//    }
//    /**
//     * 查询某个层级的前端类目树
//     * @param categoryQueryRequest
//     * @return
//     */
//    public List<FrontCategoryDO> listBy(QueryCategoryRequest categoryQueryRequest){
//        FrontCategoryDO frontCategoryDO = frontCategoryConverter.converterDO(categoryQueryRequest);
//
//        QueryWrapper<FrontCategoryDO> queryWrapper = new QueryWrapper<>();
//        queryWrapper.orderByAsc("CATEGORY_SORT");
//        queryWrapper.setEntity(frontCategoryDO);
//
//        return list(queryWrapper);
//    }
//
//    /**
//     * 新增或者修改前端类目树
//     * @param frontCategoryRequest
//     */
//    public Boolean saveOrUpdate(FrontCategoryRequest frontCategoryRequest){
//        FrontCategoryDO categoryInfoDO = frontCategoryConverter.converterDO(frontCategoryRequest);
//        // 初始化部分信息
//        categoryInfoDO.initCommon();
//        // 保存前端类目树信息
//        return  this.saveOrUpdate(categoryInfoDO);
//    }
//
//}
